home *** CD-ROM | disk | FTP | other *** search
- !Filter
- --------
-
- Version 1.00 (30-Dec-92)
-
- Files included in this package :-
-
- !Run
- !RunImage
- !Sprites
- !Help [this file]
- Templates
- Sprites
- chkspr ) my chkspr util, rename the app and see what
- !Boot ) happens (nothing!), description in Comments.
- Deafult default filter
-
-
- This application filters bits and bytes from files! It can
- either remove the byte entirely or replace it with another
- byte.
-
- Eg Remove all CRs if the file has CRLFs
- Change all CRs to LFs
-
- It can also strip the top bit from files etc etc etc.
-
- It is not a search and replace application, it only
- works on one byte at a time.
-
- Filters can be saved and loaded
-
- This app was written because my HD was filling up with slow
- BASIC file operator programs so I decided to write a nice
- WIMP one. The skeleton was my !Cobbler app (take three
- 300k sprite files and merge them into one clear file!), all
- I needed to do was prune down the ARM code. Easy. Oh no -
- the hard part is a nice user interface to permit
- modification of filters. Hopefully all that you require is
- provided.
-
- The WIMP does not multi task during the filtration but
- seeing as the filter code is written in ARM code with
- memory buffers, it is VERY quick. !Filter will filter a
- 100k file in the the time it takes to load and save it
- (actually if you choose a filter the removes most of the
- characters it will filter in a blink).
-
- This app is dedicated to Acorn cos without cribbing the
- redraw code from !Chars it would have taken me at least
- four times as long.
-
- Starting Up
- -----------
-
- Load !Filter by double clicking on it. Its iconbar sprite
- will lodge on the right hand side of the iconbar. If you
- click on the iconbar sprite the 'Filter Specification'
- window will open. This window allows you to edit the
- filter, any edit takes place immediately.
-
- You will notice the window is split into two obvious
- sections:- an icon section and the filter description. The
- ASCII value of any character can be read off the keys above
- and to the left of the filter description.
-
- There is also a menu accesible from either the iconbar
- sprite or 'Filter Specification' window that allows you to
- save filter files.
-
- Editing the filter
- ------------------
-
- You can edit the filter in different ways, they are split
- in two sections :-
-
- 1) You can alter a character so it maps to a different
- character
-
- 2) You can mask the character out
-
- All bottom row icons work only on selected regions.
-
- To select a region simply drag SELECT over your chosen area
- of the filter. Should you wish to select the whole filter
- then just click on 'Select All' ('Clear all' does the
- opposite). If you wish to just select one character just
- click with SELECT rather than drag. If you did not want to
- lose your last selection then use ADJUST instead of SELECT,
- it behaves exactly the same without clearing any selected
- characters.
-
- You can now operate on the selected characters. The
- writeable icon on the left allows the entry on a hex byte
- (which you could have calculated using my SciCalc!) with
- which you could AND, OR or EOR against all of the selected
- region. NOT is a unary operator that inverts the
- characters. If you click with SELECT you will lose the
- selection, ADJUST keeps it.
-
- If you select 'Filter out' then rather than seeing the
- characters alter you will find a red (or green if they are
- selected) spodge. This signifies that these characters will
- be removed from any file rather than altered. To reverse
- this decision then just select the filtered area and click
- on 'Filter out' again.
-
- There is one final method of altering the filter and that
- is by dragging one character to another while holding
- <SHIFT> (actually you need only hold <SHIFT> down when you
- begin the drag). Once you complete that drag the character
- you started on will replace the character you finished on.
- If you decided that the drag was not such a good idea then
- just finish the drag somewhere off the filter desciption
- (ie the icon area).
-
- You can now save the filter you have created by calling
- the menu up (over the 'Filter Specificaton' window or
- iconbar sprite - they are exactly the same) and using the
- standard save box in the 'Save' submenu.
-
- You can load filter files by double clicking on them or
- dropping them on any part of the !Filter application, this
- overwrites the old file.
-
- 'Reset' clears the filter so that should any file be
- dropped on !Filter it will be completely unaltered.
-
-
- Using the filter
- ----------------
-
- Using the filter is dead easy. Simply drop any file you
- wish to be filtered on the iconbar sprite (or 'Filter
- Specification' window if you wish) and then drag the
- resulting save box onto an awaiting directory viewer (or
- any application you wish - !Filter supports inter-
- application file transfer, although only with Wimp$Scrap).
- Hopefully the saved file will be filtered. All files will
- maintain the filetype they orignially possesed and the only
- type that will be intercepted is that of filter files with,
- of course, will be loaded as filters!
-
- If you click on !Filter's iconbar sprite or the 'Filter
- Specification' window the save box will disappear and you
- will have to repeat the drag. Do note that !Filter suggests
- a filename that is the same as the one dragged onto it but
- with an appended '/', if the leafname is ten characters
- long then the leafname will be truncated to nine characters
- to permit the addition of the '/' character.
-
-
- Configuration
- -------------
-
- If there if a filter file in the application directory
- named 'Default' then this will be loaded at the time the
- application is run so long as you have not double-clicked
- on another filter file.
-
- Filter files have file type &043
-
- If you wish to change the type of the filter files then you
- need to alter the system variable in the file '!Boot' that
- reads :-
-
- Set Filter$FileType 043
-
- to the value you wish the type to be. Do note that if the
- value is not a three digit hex number then it will be
- rejected and !Filter will use &043 instead. Double click on
- the '!Boot' file once you have changed the filetype to
- update some of !Filter's system variables.
-
-
- Filter File Format
- ------------------
-
- Filter files are 512 bytes long. They are split into two
- parts of 256 bytes. Bytes 0 to 255 contain the
- corresponding bytes that replace ASCII values 0 to 255.
- Bytes 256 to 511 contain boolean flags (one per byte).
- These correspond to ASCII values 0 to 255 and if the flag
- is true then !Filter will completely filter out that ASCII
- value.
-
-
- Comments
- --------
-
- The ChkSpr Utility
-
- The chkspr utility will, when run, examine the '!Sprites'
- file and check if the first sprite is the application's
- name. If not that sprite's name will be changed to the
- application directory's name. The !Boot file contains
- 'Run ChkSpr', this runs the util, the next line contains
- 'IconSprites <Obey$Dir>.!Sprites' this loads the new sprite
- in. The filer always calls any new (ie renamed) app's !Boot
- file so the new sprite is automatically loaded for display.
-
- Please feel free to use the utility separately from the
- rest of the package but please note that the conditions set
- out below apply to it.
-
- Versions
- --------
-
- v1.00 Initial release
-
-
- Conditions of Use
- -----------------
-
- This application is supplied free to everyone 'as is', I
- do not give any guarantee that it is free of bugs, or
- supply any warranty about its suitabliliy for use. However
- if there are any problems with it and you notify me of them
- then I probably will do my best to recify them.
-
- You are may give this application to anyone, via any
- medium, so long as :-
-
- 1) It is delivered with ALL the supplied files and
- unaltered (except !Run & !Boot files) .
-
- 2) It is not supplied on a disc you are charging
- for (except for media and postage costs).
-
- You have permission to use any part or the whole
- application in a project you intend to place in the public
- domain, as long as I am fully credited. If you wish to use
- these routines in a program that is for sale (for however
- much and for whatever reasons) or released as copyright
- material then my express permission in writing must be
- obtained. I maintain copyright on all the material
- supplied and reserve the right to amend these conditions in
- cases where I deem misuse.
-
- A large number of hours of work have gone into the
- production and maintenance of this application and although
- I have supplied the application free, donations will be
- gratefully received (and if over 10 pounds I will send you
- a disc with updates of this and all other pd stuff I have
- written. Please include a letter telling me which apps of
- mine you use and their version numbers).
-
-
- Contacts
- --------
-
- My address:
-
- 6 Parklands Place,
- Guildford,
- Surrey GU1 2PS.
-
- BBSs I call frequently:
-
-
- Arcade BBS [081 654 2212] mbx 23
-
- email
-
- maurp@uk.ac.warwick.cu
-
- © Emmet Spier 1992 - USE and Enjoy!
-